package com.chinatelecom.ifree.business.service.order;

import java.util.Date;

import com.chinatelecom.ifree.business.domain.base.BoolObjResult;
import com.chinatelecom.ifree.business.domain.base.CountResult;
import com.chinatelecom.ifree.business.domain.base.OrderResult;
import com.chinatelecom.ifree.business.domain.order.OrderEntity;

public interface OrderService {
	/**
	 * 保存预约
	 * 
	 * @param entity
	 *            预约实体
	 * @return
	 */
	public OrderResult saveOrder(OrderEntity entity);

	/**
	 * 根据手机号码查询预约信息
	 * 
	 * @param mobile
	 *            手机号码
	 * @return 预约实体
	 */
	public OrderResult getOrder(String mobile);

	/**
	 * 获取预约总数量
	 * 
	 * @return 预约总数量
	 */
	public CountResult getTotalOrderNum();

	/**
	 * 查询预约数据
	 * 
	 * @param fromDate
	 *            开始时间
	 * @param toDate
	 *            结束时间
	 * @return 返回预约列表
	 */
	public BoolObjResult getOrderInfo(Date fromDate, Date toDate, int page);

	/**
	 * 根据时间查询预约总量
	 * 
	 * @param fromDate
	 *            开始时间
	 * @param toDate
	 *            结束时间
	 * @return 返回查询预约总量
	 * @throws Exception
	 */
	public CountResult getTotalOrder(Date fromDate, Date toDate);
}
